Search engines are in the most general terms, software programs that index information contained in one or more databases. This indexed information is often stored in a directory of the database. A search engine then allows a user to input a search query whose terms are employed to find relevant information in the databases via the directory. The relevant information found is reported to the user.
The type of information indexed can be any imaginable. It can be web pages, documents, labeled images, and so on. Typically, the information is in a particular language and the search queries are also presented in the same language.
In addition, often the indexed informational items, which can be referred to generally as semantic objects, are characterized in the directory in a way that makes searching through the objects listed quick and efficient. In such cases, the search query is typically characterized in the same manner before being compared to the characterized directory entries.